Skip to main content

DELAY in showing a widget

Two tyoes of DELAY:

  1. just delay in showing a widget -- it returns nothing
  2. delay in showing a widget -- it returns something after await -- asychronous code (needs Future)

using Timer + Visibility

class DelayedVisibilityListView extends StatefulWidget {
const DelayedVisibilityListView({super.key});


State<DelayedVisibilityListView> createState() =>
_DelayedVisibilityListViewState();
}

class _DelayedVisibilityListViewState extends State<DelayedVisibilityListView> {
bool show = false;
Timer? timer;


void initState() {
super.initState();

/// Initialize timer for 3 seconds, it will be active as soon as intialized
timer = Timer(
const Duration(seconds: 3),
() {
/// Navigate to seconds screen when timer callback in executed
setState(() {
show = true;
});
},
);
}


Widget build(BuildContext context) {
return Visibility(
visible: show,
child: ListView(
shrinkWrap: true,
// physics: ScrollPhysics(),
children: [
/* */